草庐IT

php session 超时

全部标签

c++ - Windows TCP 套接字超时 C++

我有一个问题如何知道客户端是否在指定时间内没有响应服务器?!我使用的是线程而不是选择函数。非常感谢您的帮助:)谢谢。 最佳答案 您需要按如下方式查看[设置套接字选项][1]:setsockopt(sockid,SOL_SOCKET,SO_RCVTIMEO,(char*)&tv,sizeof(structtimeval));完成后,您可以在调用接收和/或发送函数时再次检查SOCKET_ERROR。具体错误码可以调用WSAGetLastError获取。这是其中一个潜在的错误代码:WSAEWOULDBLOCK10035Resourcete

perl - 如何在我的代码中设置 PERL 接收超时?

我想在下面这个特定代码中的recv函数中设置超时,因为有时我的脚本会永远卡住。我是套接字编程的新手,所以我非常感谢任何帮助。提前致谢。useIO::Socket::INET;useIO::Select;useLWP::UserAgent;useJSON::XS'decode_json';useData::Dumper;useDBI();subdbconn{my$db_conf=shift;my$dbh=DBI->connect("DBI:Pg:dbname=somedatabase;host=somehost","postgres","",{pg_server_prepare=>0,A

python - 来自不同虚拟 IP 的 1024 个连接后超时

我有一个问题,我已经纠结了一段时间但没有解决。我正在实现一个具有客户端和服务器端的流量生成器。客户端模拟具有唯一IP地址的设备。这些IP作为虚拟接口(interface)添加到客户端,然后模拟设备绑定(bind)到该客户端。然后,设备将连接到服务器端并生成往返于服务器端的流量。问题是我只能连接1023个设备,然后以下设备连接超时。我已经在服务器端检查了wireshark,我可以看到连接的SYN,但它从未在应用程序中收到。当我重用IP以便使用少于2014时,我可以建立任意数量的连接。我创建了一个更容易运行的python程序,但也有同样的问题:客户端.pyimportsocketimpor

linux - TCP RST包能减少连接超时吗?

作为了解原始套接字如何工作的一种方式,我编写了一个虚拟防火墙,它根据TCP目标端口丢弃数据包。它正在工作,但问题是客户端会重试相当长的一段时间,直到最终达到超时。我想知道是否客户端重试了这么久是因为它没有收到任何答复。在这种情况下,如果防火墙用TCPRST回复来自客户端的TCPSYNC消息会有帮助吗?如果不是,是否有任何方法可以强制客户端停止重试(不是减少Linux中的超时时间,而是更多,获得对其数据包的特定答复,这将使客户端停止)? 最佳答案 您可以将防火墙视为主机操作系统上关闭端口的情况。主机操作系统的TCP/IP堆栈会做什么?

node.js - 通过长时间运行的后台工作防止 HTTP 请求超时

以下情况:我有一个网络服务器,它会在客户端请求时下载文件并用作文件缓存。客户端请求一个文件并将文件url作为参数传递。网络服务器检查他是否缓存了文件。如果没有,网络服务器下载文件并在下载后提供文件。对客户端的响应必须是文件。不可能以“正在下载,请稍后再回来查看”来关闭响应,并在几分钟后打开来自客户端的第二个请求。不,我不会切换到套接字,因为客户端不支持它。客户端必须使用.NETWebClient.DownloadFile。问题是,在下载文件时,对网络服务器的HTTP请求被暂停。文件可以是任意大小,如果不能及时下载并返回给客户端,会导致客户端请求超时取消。我不想在客户端上设置超时,因为这

javascript - net.connect.setTimeout - 连接或套接字是什么超时类型?

我正在看书,那里有以下段落:Bydefault,socketsdonothaveatimeout.Thiscanbebad,becauseifthenetworkorremotehostfails,theconnectionsitsidleindefinitely.However,youcandefineatimeoutonthesocketusingitssetTimeout()method.ThisversionofsetTimeout()takesatimeoutinmillisecondsasitsfirstargument.Ifthesocketisidleforthisam

tcp - rabbitmq keepalive超时错误

以下是我的rabbitmq日志文件的一部分。=错误报告====22-Dec-2016::09:36:20===关闭MQTT连接“xxx.xxx.xxx.xxx:11030->xx.xx.xx.xx:1884”(保持连接超时)=错误报告====22-Dec-2016::09:36:20===关闭MQTT连接“xxx.xxx.xxx.xxx:14653->xx.xx.xx.xx:1884”(保持连接超时)=错误报告====22-Dec-2016::09:36:22===关闭MQTT连接“xxx.xxx.xxx.xxx:14494->xx.xx.xx.xx:1884”(保持连接超时)我认为这

tcp - 模拟HTTP/TCP重传超时

我在Linux上工作。我有一个HTTP客户端,它从HTTP服务器请求一些数据。HTTP客户端是用C编写的,HTTP服务器是用perl编写的。我想在客户端模拟TCP重传超时。我假设正常关闭套接字不会导致客户端重新传输请求。所以我尝试了以下场景:一旦收到HTTPGET请求就退出服务器。但是,我注意到一旦应用程序退出,套接字仍然正常关闭。我看到服务器向客户端发起FIN.ACK消息,即使应用程序没有在套接字上调用“关闭”。我在用C程序编写的简单TCP服务器和客户端上也注意到了这种行为。服务器不会对客户端的GET请求发送任何响应。在这种情况下,我注意到服务器仍然发送了FIN、ACK。似乎在这些情

c++ - 非阻塞连接超时

我正在执行非阻塞连接到服务器。在选择中使用什么合适的超时值来考虑服务器关闭/忙碌?附言由于服务器关闭或繁忙,连接可能会失败。如果服务器出现故障,我总是会以选择超时结束。更有趣的情况是当服务器繁忙时。恕我直言,1秒足以进行TCP握手。如果连接到服务器花费的时间太长,则与服务器的所有通信都会延迟。那么,等待选择最多1秒是否合理? 最佳答案 在这种情况下,数据包可能会丢失,节点将在超时后重新发送它,因此不要使用刚好足以进行握手的值。您可以尝试一下tcpdump,断开连接(拔下以太网电缆)并查看发生了什么。大约10-20秒应该没问题,但这取

c++ - 如何在 RHEL c/cpp 应用程序上测试连接超时

我有一个通过HTTP与服务器通信的应用程序。我写了一个代码来控制连接超时(服务器回复之前等待的时间)。但是我发现很难生成测试用例来测试我的连接超时代码。你能帮帮我吗?基本上,TCP握手会包含主机A发送TCP同步包给主机B主机B收到A的SYN主机B发送一个SYNchronize-ACKnowledgement主机A收到B的SYN-ACK主机A发送ACKnowledge主机B收到ACK。TCP套接字连接已建立。在我的应用程序中,如果服务器没有在x秒内完成TCP握手,应用程序将移至下一个服务器。但是为了测试这段代码,我需要一个服务器stub,它可能会接受来自客户端的SYN数据包,但不会将SY